<!--<!DOCTYPE html>-->
<!--<html xmlns:th="http://www.springframework.org/schema/jdbc">-->
<!--<head>-->
<!--    <meta charset="utf-8">-->
<!--    <title>角色分配-菜单权限</title>-->
<!--    <link rel="stylesheet" href="/components/treetable-lay/assets/layui/css/layui.css">-->
<!--    <link rel="stylesheet" href="/components/treetable-lay/assets/common.css"/>-->
<!--    <script src='/components/treetable-lay/assets/layui/layui.js'></script>-->
<!--    -->
<!--    <script src="/modules/js/app.js"></script>-->
<!--</head>-->
<!--<body>-->
<!--<style>-->
<!--    .layui-tree-branch {-->
<!--        color: #EDCA50;-->
<!--    }-->
<!--</style>-->

<!--&lt;!&ndash; 左边树 &ndash;&gt;-->
<!--<div style="display: inline-block;float:left; width: 18%; height: 500px; padding: 10px; border: 1px solid #ddd; overflow: auto;margin-top: 4%">-->
<!--    <ul id="auth-tree"></ul>-->
<!--</div>-->

<!--&lt;!&ndash; 菜单树，数据表格&ndash;&gt;-->
<!--<div style="float:left; margin-left: 3%;width: 68%;margin-top: 2.5%;">-->
<!--    <table id="auth-table" class="layui-table" lay-filter="auth-table"></table>-->
<!--</div>-->


<!--&lt;!&ndash; 确认分配按钮  &ndash;&gt;-->
<!--<script type="text/html" id="toolbar">-->
<!--    <div class="layui-btn-container">-->
<!--        <button class="layui-btn layui-btn-warm layui-btn-sm" onclick="xijiaEventUpdClick()">确认分配</button>-->
<!--        <font size="2">当前角色: </font> <font size="2" color="red" id="roleName">未选择</font>-->
<!--    </div>-->
<!--</script>-->

<!--<script>-->
<!--    let menu_find_id_list = path + "/admin/adminMenu/findByPidOrRoleId";       // 菜单查询&#45;&#45;数据列表（所有-根据角色Id获取勾选值）-->
<!--    let role_find_list = path + "/admin/adminRole/findList";                    // 角色查询-所有-->
<!--    let updRoleMenu = path + "/admin/adminRole/updRoleMenu";                     // 角色菜单权限修改-->

<!--    let res;           // 后台返回完整菜单数据-->
<!--    let checkData;     // 所有选中数据-->
<!--    let roleId = -1;   // 角色Id-->
<!--    let roleName;      // 角色名称-->


<!--    layui.config({-->
<!--        base: '../components/treetable-lay/module/' //静态资源所在路径-->
<!--    }).extend({-->
<!--        treetable: 'treetable-lay/treetable'-->
<!--    }).use(['table', 'treetable', 'element', 'tree'], function () {-->
<!--        // 复选框默认是否选中字段名-->
<!--        layui.table = $.extend(layui.table, {config: {checkName: 'isChecked'}});-->
<!--        // 获得菜单数据-->
<!--        res = Ajax.get(menu_find_id_list);-->
<!--        showTree();                    // 初始化左边边角色数据,treetable用于右边 table 数据重载-->
<!--        xijiaRenderTable(res);         // 初始化右边 table 数据-->
<!--        xijiaEventCheckbox();          // 监听复选框选中-->

<!--        /**-->
<!--         * 默认加载选择行的菜单-->
<!--         */-->
<!--        xijiaEventRoleClick(parent.data)-->
<!--    });-->


<!--    /**-->
<!--     * 生成左角色列表-->
<!--     *-->
<!--     * @date  2019/11/16 0016 16:56-->
<!--     * @return-->
<!--     */-->
<!--    function showTree() {-->
<!--        // 获得角色列表-->
<!--        let roleRes = Ajax.get(role_find_list);-->
<!--        // 左边角色菜单数据-->
<!--        layui.tree({-->
<!--            elem: '#auth-tree'-->
<!--            , click: function (item) {-->
<!--                // 点击回调-->
<!--                xijiaEventRoleClick(item);-->
<!--            }-->
<!--            , nodes: [ //节点-->
<!--                {-->
<!--                    name: '角色列表'-->
<!--                    , id: 0-->
<!--                    , skin: 'shihuang'-->
<!--                    , spread: true-->
<!--                    , children: roleRes.data  //角色数据-->
<!--                }-->
<!--            ]-->

<!--        });-->
<!--        //生成一个模拟树-->
<!--        let createTree = function (node, start) {-->
<!--            node = node || function () {-->
<!--                let arr = [];-->
<!--                for (let i = 1; i < 10; i++) {-->
<!--                    arr.push({-->
<!--                        name: i.toString().replace(/(\d)/, '$1$1$1$1$1$1$1$1$1')-->
<!--                    });-->
<!--                }-->
<!--                return arr;-->
<!--            }();-->
<!--            start = start || 1;-->
<!--            layui.each(node, function (index, item) {-->
<!--                if (start < 10 && index < 9) {-->
<!--                    let child = [-->
<!--                        {-->
<!--                            name: (1 + index + start).toString().replace(/(\d)/, '$1$1$1$1$1$1$1$1$1')-->
<!--                        }-->
<!--                    ];-->
<!--                    node[index].children = child;-->
<!--                    createTree(child, index + start + 1);-->
<!--                }-->
<!--            });-->
<!--            return node;-->
<!--        };-->
<!--    }-->


<!--    /**-->
<!--     * table数据&#45;&#45;（抽离出来方便重载）-->
<!--     *-->
<!--     * @date  2019/11/16 0016 16:56-->
<!--     * @return-->
<!--     * @param params-->
<!--     */-->
<!--    function xijiaRenderTable(res) {-->
<!--        // 渲染表格-->
<!--        layer.load(2);-->
<!--        layui.treetable.render({-->
<!--            toolbar: '#toolbar',-->
<!--            id: "te",                   // 定义Id&#45;&#45;用于复选框获取数据-->
<!--            treeColIndex: 1,            // 菜单列索引 ,加载展开图标-->
<!--            treeSpid: 0,                // 顶级父id-->
<!--            treeIdName: 'id',           // id 名称-->
<!--            treePidName: 'pid',         // fid 名称-->
<!--            treeDefaultClose: false,    // 是否默认折叠-->
<!--            treeLinkage: false,         // 父级展开时是否自动展开所有子级-->
<!--            elem: '#auth-table',        // table 的 div-->
<!--            data: res.data,             // 直接加载数据-->
<!--            done: function () {-->
<!--                layer.closeAll('loading');-->
<!--            },-->
<!--            cols: [-->
<!--                [-->
<!--                    {type: 'checkbox'},-->
<!--                    {field: 'name', title: '菜单列表'},//edit: 'text',-->
<!--                    {-->
<!--                        field: 'icon', title: '图标', templet: function (res) {-->
<!--                            return "<i class='layui-icon " + res.icon + "'></i>";-->
<!--                        }-->
<!--                    },-->
<!--                    {field: 'url', title: '路由'}-->
<!--                ]-->
<!--            ]-->
<!--        });-->
<!--    }-->


<!--    /**-->
<!--     *     监听复选框选中-->
<!--     * @date  2019/11/16 0016 19:43-->
<!--     * @return-->
<!--     */-->
<!--    function xijiaEventCheckbox() {-->
<!--        // obj = 选中行数据-->
<!--        layui.table.on('checkbox(auth-table)', function (obj) {-->
<!--            //console.log(JSON.stringify(obj))-->
<!--            if (obj.type === "all") {-->
<!--                // 更新所有选中数据te = 数据表格Id-->
<!--                checkData = table.checkStatus('te');-->
<!--            } else if (obj.type === "one") {-->
<!--                // 递归选中/取消选中-->
<!--                isChecked(res.data, obj.data, obj.checked);-->
<!--                WindowPos.onbeforeunload();  // 记录滚动条位置-->
<!--                xijiaRenderTable(res);          // 重载数据-->
<!--                WindowPos.onload();          // 还原滚动条位置-->
<!--                // 更新所有选中数据te = 数据表格Id-->
<!--                checkData = table.checkStatus('te');-->
<!--            }-->
<!--            // 展示选中-->
<!--            $("#roleName").html(roleName);-->
<!--        });-->
<!--    }-->

<!--    /**-->
<!--     * 遍历子节点判断&ndash;&gt; 选中/ 取消选中-->
<!--     * @author ws-->
<!--     * @mail  1720696548@qq.com-->
<!--     * @date  2020/4/27 0027 17:14-->
<!--     * @param nodeAll 所有节点-->
<!--     * @param node 当前节点-->
<!--     * @param checked 选中true / 取消false-->
<!--     * @return-->
<!--     */-->
<!--    function isChecked(nodeAll, node, checked) {-->
<!--        // 当菜单级别为3(页面时)，跳出，不往下递归-->
<!--        if (node.root.value >= 3) {-->
<!--            return;-->
<!--        }-->
<!--        // console.log("父菜单name=" + node.name + "")-->
<!--        for (let i = 0; i < nodeAll.length; i++) {-->
<!--            if (node.id === nodeAll[i].pid) {-->
<!--                //赋值-->
<!--                nodeAll[i].isChecked = checked;-->
<!--                // console.log("id=" + nodeAll[i].id + "  name=" + nodeAll[i].name)-->
<!--                //递归-->
<!--                isChecked(nodeAll, nodeAll[i], checked)-->
<!--            }-->
<!--        }-->
<!--    }-->

<!--    /**-->
<!--     * 角色选中回调-->
<!--     * @param item 当前选中的角色行数据-->
<!--     * @date  2019/11/16 0016 19:43-->
<!--     * @return-->
<!--     */-->
<!--    function xijiaEventRoleClick(item) {-->
<!--        //不能点击角色列表-->
<!--        if (item.id === 0) {-->
<!--            return;-->
<!--        }-->
<!--        let params = "";-->
<!--        params += "?roleId=" + item.id;-->
<!--        // 获得菜单数据-->
<!--        res = Ajax.get(menu_find_id_list + params);-->
<!--        // 重载-->
<!--        xijiaRenderTable(res);-->

<!--        //-->
<!--        roleName = item.name;-->
<!--        // 当前角色id-->
<!--        roleId = item.id;-->
<!--        // 展示选中-->
<!--        $("#roleName").html(item.name);-->

<!--    }-->


<!--    /**-->
<!--     * 角色选中状态添加 CSS样式-->
<!--     * @date  2019/11/16 0016 17:22-->
<!--     */-->
<!--    $("body").on("mousedown", ".layui-tree a", function () {-->
<!--        if (!$(this).siblings('ul').length) {-->
<!--            $(".layui-tree a cite").css('color', '#333');-->
<!--            $(this).find('cite').css('color', '#009688');-->
<!--        }-->
<!--    });-->


<!--    /**-->
<!--     *   菜单权限分配( JS点击事件)-->
<!--     * @author ws-->
<!--     * @mail  1720696548@qq.com-->
<!--     * @date  2020/4/10 0010 0:05-->
<!--     * @return-->
<!--     */-->
<!--    function xijiaEventUpdClick() {-->
<!--        if (roleId === -1) {-->
<!--            layer.msg("没有选选择角色");-->
<!--            return;-->
<!--        }-->
<!--        if (checkData === null || checkData === undefined || checkData.data === null) {-->
<!--            layer.msg("没有可更新的内容");-->
<!--            return;-->
<!--        }-->
<!--        // 获取数据-->
<!--        let menuIds = [];-->
<!--        for (let i in checkData.data) {-->
<!--            menuIds[i] = checkData.data[i].id-->
<!--        }-->
<!--        // 拼接数据并修改-->
<!--        let data = {-->
<!--            roleId: roleId,-->
<!--            menuIds: menuIds-->
<!--        };-->
<!--        let result = Ajax.put(updRoleMenu, data);-->
<!--        layer.msg(result.msg + " 当前角色拥有菜单：" + checkData.data.length + "个 ")-->
<!--    }-->


<!--</script>-->
<!--</body>-->
<!--</html>-->
